Recording and producing an MPEG information signal on/from a record carrier

ABSTRACT

A method of transmitting timing critical data via an asynchronous channel without changing any datum to be transmitted. The timing critical data can be an MPEG transport stream. The asynchronous channel can be a computer or telephone network, a digital storage media such as a digital VCR, or a digital interface. The method involves tagging each transmission unit of the data stream, before inputting to the channel, with timing information, and using the timing information at the output end of the channel to recreate the proper data timing, Various schemes are described for packing the timing information tags with each or a plurality of transmission units.

RELATED APPLICATION

This application is a continuation of commonly-assigned application Ser.No. 09/187,875, filed Nov. 6, 1998, entitled “Apparatus and methods fortransmitting an MPEG-information signal and a method for reproducingthat signal” now U.S. Pat. No. 6,556,590; which is a continuation ofcommonly-assigned application Ser. No. 08/744,159, filed Nov. 12, 1996now U.S. Pat. No. 6,081,526; which is a continuation ofcommonly-assigned application Ser. No. 08/253,535, filed Jun. 3, 1994,now U.S. Pat. No. 5,596,581; which is a continuation-in-part ofcommonly-assigned application, Ser. No. 08/225,193, now U.S. Pat. No.5,579,183, filed Apr. 8, 1994, entitled “Recording and Reproducing AnMPEG Information Signal On/From A Record Carrier” in the names of W. J.Van Gestel. R. W. J. J. Saeijs and I. A. Shah.

BACKGROUND OF THE INVENTION

The invention relates to a recording arrangement for recording aninformation signal in tracks on a record carrier, the recordingarrangement comprising

-   -   an input terminal for receiving the information signal,    -   channel encoding means for channel encoding the information        signal so as to obtain a channel signal suitable for recording        in a track on said record carrier,    -   writing means for writing the channel signal in the track, the        channel signal comprising subsequent or a succession of signal        blocks, each signal block comprising a first block section which        comprises a synchronization signal and a second block section        which comprises a number of channel bytes, to a record carrier        obtained with the recording arrangement, and to a reproducing        arrangement for reproducing the information signal from the        record carrier.

A recording arrangement as given in the opening paragraph is knownfrom-EP-A 492,704, document (1) in the list of references that can befound at the end of this application.

The known arrangement is a recording arrangement of the helical scantype, such as used in a digital VCR (DVCR) and records an informationsignal comprising a digital audio signal and a digital video signal inaudio signal recording sectors and video signal recording sectorsrespectively in subsequent tracks, where, when recording a track, thevideo signal recording sector in a track comes first and is followed bythe audio signal recording sector. The order in which the sectors occurin a track can however also be in the reverse order. Further, othersectors may be included in a track, such as a clock run-in area locatedat the beginning of a track, so as to enable a locking-in of theinternal system clock on the signals read from the track, and preambleand postamble areas that are located between the various sectors andfunction as an edit gap. Reference is made in this respect to theearlier filed European patent applications No. 93.202.950, reference (2)in the list of references, and No. 93.201.263, referenced (3) in thelist of references.

The prior art reference documents relate to proposals for therealization of a new digital video cassette (DVC) recorder standard,which enables the recording and reproduction of digital video anddigital audio on/from a longitudinal magnetic record carrier such asmagnetic tape. This new digital video recorder standard will lead to newdigital video recorders/reproducers of the so-called DVC type.

BRIEF SUMMARY OF THE INVENTION

The invention aims at providing a recording arrangement which is capableof recording other types of information signals in the known tape formatas defined in the preamble. The recording arrangement in accordance withthe invention is characterized in that the information signal is an MPEGinformation signal in accordance with an MPEG format, the MPEGinformation signal comprising subsequent or a succession of transportpackets, that the channel encoding means are adapted to store each timeinformation included in x transport packets of the MPEG informationsignal in the second block section of a group of y signal blocks of thechannel signal, that the second block section of at least the firstsignal block of the group of y signal blocks comprise a third blocksection for storing identification information identifying the signalclock as being the first signal block of the group of y signal blocks,and that x and y are integers such that x∃1 and y∃1. More specifically,the recording arrangement in accordance with the opening paragraph ischaracterized in that the information signal is an MPEG informationsignal in accordance with an MPEG format, the MPEG information signalcomprising subsequent transport packets, that the channel encoding meansare adapted to store each time information included in x transportpackets of the MPEG information signal in the second block sections of agroup of y signal blocks of the channel signal, that the second blocksections of the signal blocks comprise a third block section for storingsequence number information relating to a sequence number of the signalblocks, and that x and y are integers such that x∃1 and y∃1.

The invention is based on the following recognition. The draft GrandAlliance HDTV System Specification dated Feb. 22, 1994, document (4) inthe list of references, more specifically chapters V and VI of thespecification, comprises a description of a transport system fortransmitting an MPEG information signal, which includes a datacompressed digital video signal and a corresponding data compresseddigital audio signal, for broadcasting purposes or for transmission viaa cable network. The MPEG information signal is in the form of transportpackets having either an equal length or a variable length in time. Inboth cases, however, a transport packet comprises 199 bytes ofinformation, the first byte of which being a synchronization byte.

A transmission such an MPEG information signal in the form of arecording on a reproduction from a record carrier, such as a magneticrecord carrier as a tape, require special measures to be taken in orderto realize such kind of transmission via the known tape format. Morespecifically, the invention relates to storing the transport packets inthe signal blocks of the known tape format.

Generally, it can be said that, when storing the information included ina number of x transport packets of the MPEG information signal in anumber of y signal blocks, some unoccupied space remains available inthe y signal blocks for the storage of additional information, whichadditional information relates to the specific application of recordingand reproducing the MPEG information signal on/from the record carrier.In a specific example of the DVC format, the second block sections offive signal blocks. Now, 11 bytes (=5×77−2×187) remain available in thefive signal blocks. Those 11 bytes can be divided over the second blocksections of the five signal blocks in various ways so as to obtain thethird block sections. One such way is that the first two bytes of allsecond block sections are available as third block sections and that thelast byte available can be considered as a third block section toindicate the boundary between the information of the two transportpackets as stored in the five signal blocks.

In the above example, identification information identifying the signalblock as being the first signal block of the group of y signal blockscan be stored in a third block section of the first signal block in agroup of y signal blocks. Or, sequence number information (sequencenumbers) relating to the sequence of the signal blocks can be stored inthe third block sections. This sequence number can also be identified asa continuity counter. The measures proposed result in a number ofadvantages.

The advantage of using identification information identifying a signalblock as being the first signal block in a group of y signal blocks, isthat the beginning of a group can be detected, which simplifies theread-out of the data during reproduction.

One advantage using sequence numbers is that, when reproducing thesignal blocks, it can be decided upon retrieval of the sequence numbers,whether a signal block has been missed because of reproduction errors ornot, so that an error correction or concealment can be carried out.Another advantage is that one may shuffle the information to be storedin the signal blocks upon recording. Upon retrieval of the sequencenumbers it is possible to realize a corresponding deshuffling inresponse to the sequence numbers retrieved so as to obtain the originaldata stream.

Further, having sequence numbers included in the third block sections ofthe signal blocks makes it possible to repeat signal blocks in the casethat a transport packet of the MPEG data stream stored in those signalblocks requires a higher protection against errors that can occur duringthe recording and a subsequent reproduction process.

The recording arrangement as given in the opening paragraph may also becharacterized in that the information signal is an MPEG informationsignal in accordance with an MPEG format, the MPEG information signalcomprising subsequent transport packets, that the channel encoding meansare adapted to store each time information included in x transportpackets of the MPEG information signal in the second block sections of afirst group of y first signal blocks of said signal blocks of thechannel signal so as to enable a normal play mode using videoinformation stored in said first group of y first signal blocks during anormal play reproduction mode, the channel encoding means further beingadapted to retrieve a trick mode video signal from the MPEG informationsignal and being adapted to store said trick or feature mode videosignal in second block sections of a second group of z second signalblocks of said signal blocks of the channel signal so as to enable atrick play mode using the video information stored in said second signalblocks, that the second block sections of at least one signal block ineach first and second group of first and second signal blocksrespectively comprise a third block section for storing identificationinformation indicating whether the group comprises first signal blocksor second signal blocks, and that x, y and z are integers such that x∃1,y>1 and z>1.

More specifically, the information signal is an MPEG information signalin accordance with an MPEG format, the MPEG information signalcomprising subsequent transport packets, that the channel encoding meansare adapted to store each time information included in x transportpackets of the MPEG information signal in the second block sections of agroup of y signal blocks of the channel signal, that the second blocksections of at least those signal blocks in a group of y signal blocksthat comprises the start portion of a transport packet comprise a thirdblock section for storing sequence number information relating to atransport packet sequence number corresponding to the transport packethaving its start portion stored in the second block section of thesignal block, and that x and y are integers such that X∃1 and y>1. Thisenables a reproduction in the reproducing arrangement in a normal playmode using the first signal blocks and a reproduction in a trick playmode using the second signal blocks, in response to the detection of theinformation indicating the groups comprising first signal blocks orsecond signal blocks respectively.

The recording arrangement as given in the opening paragraph may also becharacterized in that the second block sections of all signal blocks ineach first and second group of first and second signal blocksrespectively comprise a third block section for storing identificationinformation indicating whether the group comprises first signal blocksor second signal blocks. More specifically, the second block sections ofa group of y signal blocks each comprise a third block section forstoring sequence number information relating to a transport packetsequence number corresponding to the transport packet of whichinformation is stored in said signal block.

Storing a packet sequence number has its advantages if an MPEG datastream is received having a constant bit or transport rate, andcomprising a number of different video programs interleaved in the MPEGdata stream. Generally, such data stream has a too high bit rate forrecording the total data stream on the record carrier. Typically, theMPEG bit rate is 45 Mbps, whereas the record carrier typically recordswith a 25 Mbps bit rate. The recording arrangement now comprises aprogram selector for retrieving one video program and correspondingaudio signal from the MPEG data stream so as to obtain the MPEGinformation signal for recording. As information corresponding to onlyone video program is included in a MPEG transport packet, such programselector selects only those transport packets from the MPEG data streamthat comprise information corresponding to said only one video program.That means that some packets of the original MPEG data stream receivedare deleted. Upon reproduction however, an MPEG video signal inaccordance with the MPEG standard, however now comprising only the onevideo program, should be regenerated or recreated. Such regenerated datastream should have the transport packets that were selected uponrecording at the same location, that is in one or other way, dummypackets corresponding to the packets deleted upon recording must beinserted in the regenerated data stream. Upon recording a sequencenumber is added to each transport packet received, that is: also for thepackets that will be deleted. The sequence numbers of the packets thatare selected and stored is stored in the third block section of thesignal blocks in which a transport packet is stored. Upon reproduction,a sequence of numbers is retrieved, where subsequent numbers will notnecessarily be next higher numbers. In that situation one or more dummypackets must be inserted so as to regenerate the replica of the originalMPEG data stream.

The recording arrangement as given in the opening paragraph can furtherbe characterized in that the information signal is an MPEG informationsignal in accordance with an MPEG format, the MPEG information signalcomprising subsequent transport packets, the recording arrangementcomprising detection means for detecting the moment of receipt of thetransport packets and for generating timing information for eachtransport packet received, the timing information for a transport packetcorresponding to said moment of receipt of said transport packet, thatthe channel encoding means are adapted to each time store informationincluded in x transport packets of the MPEG information signal in thesecond block sections of a group of y signal blocks of the channelsignal, that the second block sections of at least those signal blocksin a group of y signal blocks that comprises the start portion of atransport packet comprise a third block section for storing the timinginformation for said transport packet having its start portion stored inthe second block section of the signal block, and that x and y areintegers such that x∃1 and y>1.

More specifically, the second block sections of a group of y signalblocks each comprise a third block section for storing the timinginformation corresponding to the transport packet which has informationstored in the second block section of said signal block.

Storing timing information corresponding to transport packet requiresthat the recording arrangement is provided with detection means fordetecting the time of receipt of a transport packet. This measure hasits advantages if an MPEG data stream is received having a variable bitrate, and comprising a number of different video programs interleaved inthe MPEG data stream. As has been said above, generally, such datastream has a too high bit rate for recording the total data stream onthe record carrier. The recording arrangement now comprises a programselector for retrieving one video program with its corresponding audiosignal from the MPEG data stream so as to obtain the MPEG informationsignal for recording. As information corresponding to only one videoprogram is included in a MPEG transport packet, such program selectorselects only those transport packets from the MPEG data stream thatcomprise information corresponding to said only one video program. Bydetecting and storing the timing information corresponding to atransport packet, the reproducing arrangement will be capable ofretrieving the timing information and recreating the MPEG informationsignal using said timing information.

It should be noted that the measures discussed above can be appliedsolely or in combination with one another in the recording arrangement.As a result, record carriers will be obtained having signal blocksstored in tracks on the record carrier, the signal blocks having a firstblock section which comprises a synchronization signal and a secondblock section which comprises a number of channel bytes, x transportpackets of the MPEG information signal being stored in the second blocksections of a group of y signal blocks of the channel signal.

Further in accordance with the invention,

-   -   the second block section of at least the first signal block of        the group of y signal blocks comprise a third block section for        storing identification information identifying the signal block        as being the first signal block of the group of y signal blocks,        or    -   said identification information is sequence number information        and the second block sections of a group of y signal blocks all        comprise a third block section for storing sequence number        information relating to the sequence numbers of the signal        blocks, or    -   the second block sections of the signal blocks each comprise a        third block section for storing identification information        indicating whether the signal block comprise ‘normal play’ data        or ‘trick mode’ data, or    -   the second block sections of at least those signal blocks in a        group of y signal blocks that comprises the start portion of a        transport packet comprise a third block section for storing        identification information relating to a transport packet        sequence number corresponding to the transport packet having its        start portion stored in the second block section of the signal        block, or    -   the second block sections of at least those signal blocks in a        group of y signal blocks that comprises the start portion of a        transport packet comprise a third block section for storing the        timing information for said transport packet having its start        portion stored in the second block section of the signal block,        or    -   third block sections comprise information resulting from a        combination of one or more of the measures listed above.

It will be apparent that a reproducing arrangement will be needed whichis adapted to each specific embodiment of the recording arrangement, soas to enable a reproduction of the MPEG information signal recorded onthe record carrier. Such reproducing arrangement is the subject of theclaims directed to the reproduction arrangement.

The invention also includes the method of transmitting timing criticaldata over an asynchronous channel without changing any of the criticaltiming information; in other words, to make the asynchronous channeltransparent for the timing critical data. This is achieved, broadlyspeaking, by tagging one or more of the transmission units making up thedata with timing information before sending it over the channel, andthen using the tagged information to recreate the proper data timing atthe other end of the channel. As an example, the data can be an MPEGinformation signal, and the channel a DVCR. But the invention is notlimited to this application and can also be applied to asychronouschannels such as a computer network, a telephone network or a digitalinterface.

SUMMARY OF THE DRAWINGS

These and other aspects of the invention will be apparent from andelucidated with reference to the embodiments described hereafter and theaccompanying drawings, in which:

FIG. 1 shows the track format of a record carrier of the DVC-type,

FIG. 2 shows schematically the contents of the video signal recordingsector in the track of FIG. 1,

FIG. 3 shows schematically the serial MPEG data stream and the format ofthe transport packets included in the serial MPEG data stream,

FIG. 4 shows an example of the storage of two transport packets in fivesignal blocks,

FIG. 5 shows the contents of the track when having MPEG informationrecorded in it,

FIG. 6 shows one embodiment of the recording arrangement,

FIG. 7 shows one embodiment of the reproducing arrangement,

FIG. 8 a shows an example of an original serial MPEG data stream havinga constant bit rate and packet rate, FIG. 8 b the MPEG data stream thatis recorded, and FIG. 8 c the regenerated replica of the original serialMPEG data stream,

FIG. 9 shows one embodiment of the ‘normal play’ processing unit in therecording arrangement of FIG. 6,

FIG. 10 shows one example of a sequence of three groups of five signalblocks each,

FIG. 11 shows another example of a sequence of three groups of fivesignal blocks each,

FIG. 12 shows one example of the ‘normal play’ processing unit in thereproducing arrangement of FIG. 7,

FIG. 13 a shows an example of an original serial MPEG data stream havinga variable bit rate and packet rate, FIG. 13 b the MPEG data stream thatis recorded, and FIG. 13 c the regenerated replica of the originalserial MPEG data stream,

FIG. 14 shows another embodiment of the ‘normal play’ processing unit inthe recording arrangement of FIG. 6,

FIG. 15 shows another embodiment of the ‘normal play’ processing unit inthe reproducing arrangement of FIG. 7,

FIG. 16 shows the record carrier and the read head scanning the recordcarrier during a trick play mode,

FIG. 17 shows the sequence of signal blocks in a track forming the trickplay area,

FIG. 18 shows another embodiment of the invention combining therecording and playback systems,

FIG. 19 shows an example of the input and output data streams from theapparatus of FIG. 18,

FIG. 20 shows another example of input and output data streams fromapparatus similar to that of FIG. 18,

FIG. 21 shows one form of data block of the invention for transmissionover an asynchronous channel,

FIG. 22 shows in more detail the block payload of the data block of FIG.21,

FIG. 23 shows various tagging options in accordance with the invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENT

FIG. 1 shows the format of the signals as they are recorded in a trackon a magnetic record carrier by means of a helical scan video recorderof the DVC type. The left end of the track 1 in FIG. 1 is the start ofthe track and the right end of the track is the terminal part of thetrack. The track comprises a number of track parts. The track partdenoted by G1 is the preamble track part. An example of the preambletrack part G1 has been described extensively in reference (1).

The track part G1 is followed by tracking tone recording part TP1, whichis denoted by ITI (insert timing information) track part and whichcontains a tracking tone, synchronization information and identification(or timing) information. Further explanation of the contents of the ITItrack can be found in reference (3).

The track part TP1 is followed by an edit gap G2. The edit gap G2 isfollowed by the track part TP2, which is the audio signal recordingsector and comprises digital audio information. The edit gap G3 isfollowed by a track part TP3 which is the video signal recording sectorand comprises digital video information. The edit gap G4 is followed bya track part TP4, denoted by INDEX and which comprises among other itemssubcode information, such as absolute and/or relative time informationand a table of contents (TOC). The track is terminated by the track partG5. It can be said that the sequence order in which the parts TP1, TP2and TP3 occur in the tracks may be different.

The contents of the video signal recording sector TP3 is given in FIG.2. FIG. 2 in fact shows schematically a number of 149 horizontal lines,denoted by j=1 to j=149, having bytes of information stored in it. The149 lines are in fact 149 signal blocks (or sync blocks) that are storedsequentially in the video signal recording sector TP3. 90 bytes ofinformation, denoted by i=1 to i=90, are stored in each signal block.

The first two bytes (i=1 and i=2) of each signal block form asynchronization pattern of 2 bytes long. The following three bytes ineach signal block form an ID code, comprising among other itemsinformation which indicates the sequence number of the signal block inthe video signal recording part TP3. The last eight bytes in the signalblocks form horizontal parity information. Vertical parity informationis stored in the storage locations i=6 to i=82 inclusive of the last 11signal blocks.

Bytes of video signal information are stored in the storage locationsi=6 to i=82 inclusive of the signal blocks having the sequence numbersj=3 to j=137 inclusive. Bytes of auxiliary data are stored in thestorage locations i=6 to i=82 inclusive of the signal blocks having thesequence numbers j=1, 2 and 138. The signal blocks are storedsequentially in the video signal part TP3, starting with the signalblock denoted y=1, followed by the signal block denoted j=2, and so onuntil the signal block denoted j=149.

The auxiliary data for storage in the signal blocks denoted j=1, 2 and138 can be teletext data or control data.

It should be noted here that it can be specified that the auxiliary datawill be stored in a different location in the memory. Reference is madein this respect to document (1), FIG. 13, where the auxiliary data isstored in the memory part denoted by III.

FIG. 3 shows schematically the MPEG data stream applied to a recordingarrangement in accordance with the invention. The MPEG data streamcomprises subsequent transport packets, denoted by . . . , P_(k−1),P_(k), P_(k+1), . . . . The packets each comprise a packet headerportion PH of 4 bytes long and a body portion of 184 bytes long. Thetransport packets can be transmitted in a data stream having a constantbit rate. This means that the packets are equally long, viewed in time,and are received at a fixed packet rate. The transport packets may alsobe transmitted in a data stream having a variable bit rate. In thissituation, the packets need not be of the same length, viewed in time,and may be received with a variable packet rate. The first byte in thepacket header PH is a sync byte. The sync byte is identical for all thetransport packets. The other three bytes in the header comprise IDinformation, such as a packet identifier. For a further explanation ofthe contents of the ID information, reference is made to document (4) inthe list of references, more specifically chapter V, paragraph 5.1 onpage 27.

The body portion of the transport packets comprise each 184 bytes forstoring the video and audio information that should be transmitted inaccordance with the MPEG format. The body portion of one transportpacket can store either audio information corresponding to a certainvideo signal, or the video signal. Further, in the case that a number ofvideo programs are transmitted via the MPEG data stream, the bodyportion stores a video signal corresponding to one of such videoprograms transmitted.

One aspect of the invention now aims at recording the video signal, andthe corresponding audio signal as may be appreciated, corresponding toone of those video programs transmitted via the MPEG data stream, on therecord carrier having the track format disclosed in FIGS. 1 and 2.Information stored in the transport packets should be stored in thesignal blocks, more specifically, in the 135 signal blocks denoted j=3to j=137 in the video signal recording part TP3 of a track. The two syncbytes, denoted i=1 and 2, the ID information in the form of the three IDbytes denoted i=3, 4 and 5, as well as the 8 horizontal parity bytes,denoted by i=83 to 90, in those signal blocks are required for a correctrecording and reproduction. As a consequence, only the 77 bytes, denotedby i=6 to 82, in the signal blocks denoted by j=3 to 137, are availablefor the storage of the transport packets of the MPEG information. Thepart of the signal blocks formed by the 77 bytes i=6 to 82 is defined asbeing the second block sections of the signal blocks.

As synchronization during recording and reproduction is assured by meansof the sync words in each of the signal blocks, there is no need fortransmitting the sync bytes of the transport packets via the recordcarrier. So, before storing the information comprised in the transportpackets in the second block sections of the signal blocks denoted by j=3to 135, the sync byte of all the transport packets is thrown away. As aresult only 187 bytes of information should be stored in the signalblocks for each transport packet.

A simple calculation makes clear that two transport packets can bestored in five signal blocks, and that 11 bytes remain available for thestorage of other information. FIG. 4 gives an example of how the twotransport packets can be stored in the second block sections of thegroup of five signal blocks, denoted SB1 to SB5 in FIG. 4. FIG. 4 onlyshows the contents of the second block sections of length of 77 bytesincluded in the signal blocks. As can be seen in FIG. 4, the 11 bytesare divided over the group of five signal blocks such that each secondblock section comprises a third block section TB3.1 to TB3.5, of twobytes long at the beginning of the second block sections of the fivesignal blocks SB1 to SB5 respectively, and a third block section in theform of one byte, denoted by FB, is available in the third signal blockSB3. The 187 bytes of the first transport packet are stored in thesignal blocks SB1, SB2 and SB3, where the three ID bytes of the packetheader of the first transport packet, indicated by TH1, are stored firstin the signal block SB1, directly after the third block section TB3.1,and next the first 72 first bytes in the body of the first transportpacket are stored thereafter in the second block section of the signalblock SB1. The next 75 bytes in the body of the first transport packetare stored in the second block section of the signal block SB2, afterthe third block section TB3.2, and the last 37 bytes in the body of thefirst transport packet are stored in the second block section of thesignal block SB3, after the third block section TB3.3.

Next comes the byte FB, which indicates the boundary between theinformation of the first and second transport packets stored in thegroup of five signal blocks. The 187 bytes of the second transportpacket are stored in the signal blocks SB3, SB4 and SB5, where the threeID bytes of the packet header of the second transport packet, indicatedby TH2, are stored first in the signal block SB3, directly after thebyte FB. Next the first 34 first bytes in the body of the secondtransport packet are stored thereafter in the second block section ofthe signal block SB3. The next 75 bytes in the body of the secondtransport packet are stored in the second block section of the signalblock SB4, after the third block section TB3.4, and the last 75 bytes inthe body of the second transport packet are stored in the second blocksection of the signal block SB5, after the third block section TB3.5.

It should be noted that also another spreading of the 11 available bytesover the five signal blocks is possible. As an example, the 11 bytescould have been split into two third block sections, the one third blocksection having as an example 6 bytes and being located at the beginningof the first signal block SB1, and the other third block section of 5bytes long being located in the third signal block and indicating theboundary between the two transport packets stored in the five signalblocks. Another example could have been to have a third block sectionlocated at the beginning of the signal blocks SB1 and SB3 and anotherthird block section in the third signal block SB3, indicating theboundary between the two transport packets stored in the five signalblocks, where the third block section in the signal block SB1 can haveeg. 4 bytes, the first third block section in the signal block SB3 eg. 3bytes and the third block section in signal block SB3 indicating thesaid boundary being eg. 4 bytes long.

The third block sections TB3.1 to TB3.5 can be used for the storage ofadditional information. As a first example, the third block sectionTB3.1 can include an indication identifying the signal block SB1 asbeing the first signal block in a group of five signal blocks. This canbe realized by storing in one specific bit location in the third blocksection TB3.1 a bit value of a certain polarity, such as ‘0’ or ‘1’. Inthe same bit locations in the third block sections TB3.2 to TB3.5 a bitvalue of the opposite polarity should be stored. In another example,sequence number information, eg. sequence numbers running from 1 to 5can be stored in the third block sections TB3.1 to TB5 respectively, ofthe group of five signal blocks, where the third block section TB3.1 hasthe sequence number ‘1’ and the third block section TB3.5 has thesequence number ‘5’ stored in them. Three specific bit locations in thethird block sections TB3.1 to TB3.5 are required to stored the sequencenumbers. The sequence numbers can however also run across the groupboundaries so as to identify a larger sequence of signal blocks, egwithin one track, or even in more than one track.

In another example, one specific bit location in the third blocksections TB3.1 to TB3.5 of a group of five signal blocks can be used tostore either a bit value of one polarity, such as ‘0’ or ‘1’, so as toindicate that the video data included in the signal block is so-called‘normal play’ data, or a bit value of the opposite polarity, so as toindicate that the video data included in the signal block is so-called‘trick play’ video data. The use of the ‘normal play’ video data and‘trick play’ video data will be explained later.

In again another example, sequence numbers are generated in response totransport packets in the MPEG data stream that is received. As has beenexplained earlier, such MPEG data stream can include more than one videoprogram. As the bit rate of the MPEG data stream is normally higher thanthe bit rate of the signal that can be recorded, only one video programmay be selected from the serial MPEG data stream for recording.Selection of one video program means selection of transport packets outof the data stream of the MPEG data stream that comprise the informationrelating to said video program, and deleting the other packets.Consequently the serial array of transport packets that will be recordedhave sequence numbers that not necessarily are next higher numbers, asthose sequence numbers of the transport packets deleted are not present.When storing the sequence numbers in the third block sections, thosesequence numbers can be retrieved upon reproduction. By checking thesubsequent sequence numbers retrieved, it can be established whether theoriginal MPEG data stream applied to the recording arrangement,originally included deleted transport packets between two transportpackets reproduced. If so, a replica of the original MPEG data streamcan be regenerated by inserting one or more dummy packets between thetwo transport packets reproduced.

In a related example, timing information is stored in the third blocksections, for the same reason as given above, namely for regenerating areplica of the original MPEG data stream, in the case that such datastream is a data stream having a variable bit rate.

It will be clear that also a combination of the additional informationdescribed above can be included in the 11 bytes available for thestorage of such information in a group of five signal blocks.

As an example, it has been made clear above that a 3-bit word is neededin the third block sections to indicate the sequence numbers of thesignal blocks in the group of five signal blocks. More specifically, the3-bit words ‘000’, ‘001’, ‘010’, ‘011’ and ‘100’ could have been used toidentify the sequence. That means that the 3-bit words ‘101’, ‘110’ and‘111’ remain available for a further identification. As an example, the3-bit words ‘101’ and ‘110’ could be used to identify either ‘normalplay’ data or ‘trick mode’ data.

FIG. 5 shows the track format of the track if the MPEG information hasbeen stored in the second block portions of the signal blocks of thetrack portion TP3 of FIG. 1, now denoted by track portion TP3′. FIG. 5shows the first two signal blocks (j=1,2) in the track portion TP3′ thatstill includes the auxiliary data, followed by 135 signal blocks (j=3 toj=137) now comprising the MPEG information and the additionalinformation described above. Next one signal block (j=138) alsocomprising the auxiliary data, followed by 11 signal blocks comprisingthe parity information. The storage of the MPEG information and theadditional information in the 135 signal blocks may require anadditional error encoding step to be carried out on the saidinformation, resulting in additional parity information that should alsobe stored in a track. As the MPEG information, which includes videoinformation and corresponding audio information, is stored in the signal135 blocks in the track portion TP3′, there is no need for storing audioinformation in the track portion TP2 of FIG. 1. This portion, nowdenoted by TP2′ in FIG. 5, can be used to store the parity informationresulting from the additional error encoding step.

FIG. 6 shows schematically one embodiment of the recording arrangement.The recording arrangement comprises an input terminal 11 for receivingthe MPEG serial data stream for recording transport packets included inthe data stream in the signal blocks of the track portions TP3′ of thetracks. The input terminal 11 is coupled to an input 12 of a ‘normalplay’ processing unit 14. Optionally, a ‘trick play’ processing unit 16is provided having an input 17 also coupled to the input terminal 11.Outputs 19 and 20 of the ‘normal play’ processing unit 14 and the ‘trickplay’ processing unit 16 (if present) are coupled to correspondinginputs of a multiplexer 22. It will be clear that in the absence of the‘trick play’ processing unit 16, also the multiplexer 22 will be absent.

An auxiliary signal generator 24 is present for supplying the auxiliarysignal information for storage in the signal blocks denoted by j=1,2 and138, see FIG. 2. Outputs of the multiplexer 22 and the generator 24 arecoupled to corresponding inputs of an error correction encoder unit 26.The error correction encoder unit 26 is capable of carrying out a firsterror correction encoding step, denoted ECC3, and a second errorcorrection encoding step, denoted ECC2. Next a third error correctionencoding step, denoted ECC1, is carried out in an error correctionencoder unit 28.

The recording arrangement further comprises a generator 30 for addingthe ID information in the bytes i=3, 4 and 5 of the signal blocks, seeFIG. 2, for adding the index information for storage in the trackportion TP4, see FIG. 5, and the gap information for realizing the gapsG1 to G5, see FIG. 5. After combination of the signals in the combiningunit 32, the combined signal is applied to a unit 34, in which anencoding is carried out where each time 24-bit words of the incomingbitstream are converted into 25-bit words, where a sync word is added soas to obtain the first two bytes (i=1,2) in the signal blocks and wherethe ITI information is added for storage in the track portion TP1.

The 24-to-25 encoding carried out in the encoding unit 34 is well knownin the art. Reference is made in this respect to U.S. Pat. No.5,142,421, document (5) in the list of references. This document alsodescribes a way of adding the sync word to the data stream.

An output of the encoding unit 34 is coupled to an input of a writingunit 36, in which the data stream obtained with the encoding unit 34 isrecorded in the slant tracks on the record carrier, by means of at leastone write head 42.

The first error correction encoding step, denoted ECC3, is required soas to realize the additional error protection of the MPEG information tobe recorded on the record carrier, and results in parity informationthat will be stored in the track portion TP2′, as has been explainedpreviously. The second error correction encoding step, denoted ECC2,results in the vertical parity information that will be stored in the 11signal blocks (j=139 to 149) of the track portion TP3′, see FIGS. 2 and5. The third error correction encoding step, denoted ECC1, results inthe horizontal parity information that will be stored in the last 8bytes of the signal blocks in the track portion TP3′, see FIGS. 2 and 5.

Before a further description of the ‘normal play’ processing unit 14 andthe ‘trick play’ processing unit 16 of the recording arrangement of FIG.6 will be given, first a schematic description of the reproducingarrangement will be given. This has the advantage that, when furtherdescribing certain measures applied in the processing units 14 and 16, adirect relation can be given to the advantages and consequences of thosemeasures during reproduction.

FIG. 7 shows schematically an embodiment of a reproduction arrangementfor reproducing information from the record carrier 40 obtained with therecording arrangement of FIG. 6. The reproduction arrangement comprisesa reading unit 50, having at least one reading head 52 for readinginformation from the slant tracks on the record carrier 40. An output ofthe reading unit 50 is coupled to an input of a decoding unit 54, whichcarries out a 25-to-24 decoding on the signal read out, so as to convert25-bit words in the incoming data stream into 24-bit words. Next, afterhaving selected out in the selector unit 56 all those information thatis not required for recreating a replica of the original MPEG datastream, an error correction is carried out in the error correction unit58. It will be clear that the error correction carried out has threesteps. One error correction step based on the ECC1, using the horizontalparities, see FIG. 2, a second error correction step based on ECC2,using the vertical parities, and a third error correction step based onECC3, using the parity information stored in the track portion TP2′, seeFIG. 5.

The output terminal of the error correction unit 58 is coupled to aninput of a ‘normal play’ processing unit 60. Optionally, a ‘trick play’processing unit 62 is provided having an input also coupled to theoutput of the error correction unit 58. Outputs 64 and 65 of the ‘normalplay’ processing unit 60 and the ‘trick play’ processing unit 62 (ifpresent) are coupled to corresponding terminals a and b respectively ofa switch 66, a c-terminal of which is coupled to an output terminal 68.It will be clear that in the absence of the ‘trick play’ processing unit62, also the switch 66 will be absent. If the reproducing arrangement isswitched into a ‘normal play’ reproduction mode, this means that therecord carrier is transported at a nominal speed, that the ‘normal play’processing unit 60 is enabled and the switch 66 is switched into theposition a–c. If the reproducing arrangement is switched into a ‘trickplay’ reproduction mode, also called ‘feature mode’, this means that therecord carrier is transported at a speed other than the nominal speed,that the ‘trick play’ processing unit 62 is enabled and the switch 66 isswitched into the position b–c.

Now a further discussion will be given of the processing units 14 and 16of FIG. 6, in combination with the processing units 60 and 62 of FIG. 7.

It is assumed that the recording arrangement is capable of selecting onevideo program and its corresponding audio signal from the serial MPEGdata stream that is applied to the input terminal 11, in response to aselection signal supplied to the arrangement by a user. As has been saidearlier, only those transport packets in the serial MPEG stream shouldbe selected that include information relating to the video programselected. FIG. 8 a shows the serial MPEG data stream as a function oftime comprising the transport packets denoted P_(k). It should be notedthat the transport packets of the MPEG data stream do not comprise apacket number. The packet number k, given to the packets in FIG. 8 a,are therefore the numbers that will be generated by the packet numbergenerator 86 of FIG. 9 that will be discussed later.

Selecting only those packets of the packets P_(k) of FIG. 8 a thatinclude information relating to the video program selected means, as anexample, that the packets P_(k−4), P_(k−1), P_(k), P_(k+2), P_(k+4),P_(k+8) will be selected and that the intermediate packets will bethrown away. As a result, a data stream has been obtained in therecording arrangement for recording on the record carrier, as shown inFIG. 8 b, which shows the data stream as a function of time. Noconclusion should be drawn from the timing in the time scales of FIGS. 8a and 8 b, nor from the relative location between the time scales inFIGS. 8 a and 8 b. This for the reason that, as has been saidpreviously, the bit rate of the original MPEG data stream (FIG. 8 a) isdifferent from (higher than) the bit rate with which the selectedtransport packets will be recorded on the record carrier.

An embodiment of the ‘normal play’ processing unit 14 for recording adata stream as shown in FIG. 8 b is shown schematically in FIG. 9. Theembodiment denoted 14′ in FIG. 9, comprise a selector unit 76 having aninput coupled to the input 11 of the unit 14′. The selector unit 76 hasanother input 78 for receiving the selection signal supplied by theuser. An output 79 of the selector unit 78 is coupled to the input of async stripper 80, whose output is coupled to a signal combining unit 82.Further, an output 81 of the selector 76 is coupled to a control input83 of the combining unit 82, for supplying a control signal to thecombining unit 82.

The input 11 is further coupled to an input of a packet detector 84,which has an output coupled to an input of a packet number generator 86.An output of the generator 86 is coupled to a second input of thecombining unit 82.

The selector 76 selects the transport packets P_(k−4), P_(k−1), P_(k),P_(k+2), P_(k+4), P_(k+8) from the serial MPEG data stream applied tothe input 11 in response to the selection signal received via the input78. The packets selected are applied to the sync stripper 80, in whichthe first sync byte in the packet header PH, see FIG. 3, is deleted fromthe packets, in accordance with a description given previously. Thepacket detector 84 detects the receipt of each packet in the originalserial MPEG data stream applied to the input 11 and generates a clockimpulse for each packet detected. The generator 86 includes a counterthat counts up under the influence of the clock impulses applied to thegenerator 86. As a consequence a next higher count number is applied tothe output for each clock impulse received. At the output 87 of thegenerator 86 thus appear count numbers . . . k−4, k−3, k−2, k−1, k, k+1,k+2, k+3, k+8, . . . Under the influence of the control signal appliedto the control input 83 of the combining unit 82, the control unitcombines the packets P_(k−4), P_(k−1), P_(k), P_(k+2), P_(k+4), P_(k+8)selected by the selector 76 as well as the count numbers k−4, k−1, k,k+2, k+4, k+8 out of the count number stream supplied by the packetnumber generator 86 for storage into the signal blocks.

FIG. 10 shows an example how the transport packets and the correspondingpacket numbers can be stored in the groups of five signal blocks. FIG.10 shows three subsequent groups of five signal blocks, denoted G1, G2and G3 in which the information is stored. In the third block sectionTB3.1 of the first signal block SB1 of the group G1, the packet numberk−4 is stored and the information comprised in the packet P_(k−4) isstored thereafter in the signal blocks SB1, SB2 and SB3 of the group G1.In the third block section denoted FB of the third signal block SB3 ofthe group G1, the packet number k−1 is stored and the informationcomprised in the packet P_(k−1) is stored thereafter in the signalblocks SB3, SB4 and SB5 of the group G1. In the third block sectionTB3.1 of the first signal block SB1 of the group G2, the packet number kis stored and the information comprised in the packet P_(k) is storedthereafter in the signal blocks SB1, SB2 and SB3 of the group G2. In thethird block section denoted FB of the third signal block SB3 of thegroup G2, the packet number k+2 is stored and the information comprisedin the packet P_(k+2) is stored thereafter in the signal blocks SB3, SB4and SB5 of the group G2. In the third block section TB3.1 of the firstsignal block SB1 of the group G3, the packet number k+4 is stored andthe information comprised in the packet P_(k+4) is stored thereafter inthe signal blocks SB1, SB2 and SB3 of the group G3. In the third blocksection denoted FB of the third signal block SB3 of the group G3, thepacket number k+8 is stored and the information comprised in the packetP_(k+8) is stored thereafter in the signal blocks SB3, SB4 and SB5 ofthe group G3. As long as the number of bits of the packet number issmaller than or equal to 8, the packet number will fit in the thirdblock section FB, which is 1 byte long.

Another example of storing the packet numbers in the third blocksections is given in FIG. 11. In the third block sections TB3.1, TB3.2and TB3.3 of the signal blocks SB1, SB2 and SB3 respectively of thegroup G1, the packet number k−4 is stored and the information comprisedin the packet P_(k−4) is stored in the signal blocks SB1, SB2 and SB3 ofthe group G1, as explained previously with reference to FIG. 4. In thethird block section denoted FB of the third signal block SB3 of thegroup G1, as well as in the third block sections TB3.4 and TB3.5 of thesignal blocks SB4 and SB5 of the group G1, the packet number k−1 isstored and the information comprised in the packet P_(k−1) is stored inthe signal blocks SB3, SB4 and SB5 of the group G1, as explainedpreviously with reference to FIG. 4. In the third block sections TB3.1,TB3.2 and TB3.3 of the signal blocks SB1, SB2 and SB3 respectively ofthe group G2, the packet number k is stored and the informationcomprised in the packet P_(k) is stored in the signal blocks SB1, SB2and SB3 of the group G2. In the third block section denoted FB of thethird signal block SB3 of the group G2, as well as in the third blocksections TB3.4 and TB3.5 of the signal blocks SB4 and SB5 respectivelyof the group G2, the packet number k+2 is stored and the informationcomprised in the packet P_(k+2) is stored in the signal blocks SB3, SB4and SB5 of the group G2. In the third block sections TB3.1, TB3.2 andTB3.3 of the signal blocks SB1, SB2 and SB3 of the group G3, the packetnumber k+4 is stored and the information comprised in the packet P_(k+4)is stored in the signal blocks SB1, SB2 and SB3 of the group G3. In thethird block section denoted FB of the third signal block SB3 of thegroup G3, as well as in the third block sections TB3.4 and TB3.5 of thesignal blocks SB4 and SB5 of the group G3, the packet number k+8 isstored and the information comprised in the packet P_(k+8) is stored inthe signal blocks SB3, SB4 and SB5 of the group G3.

Instead of storing the packet number k−4 in the third block sectionTB3.3 of the signal block SB3 in group G1, one could have stored thepacket number k−1 in said third block section. Instead of storing thepacket number k in the third block section TB3.3 of the signal block SB3in group G2, one could have stored the packet number k+2 in said thirdblock section. Instead of storing the packet number k+4 in the thirdblock section TB3.3 of the signal block SB3 in group G3, one could havestored the packet number k+8 in said third block section.

FIG. 12 schematically shows an embodiment of the ‘normal play’processing unit 60 of the reproducing arrangement of FIG. 7, forregenerating a replica of the original MPEG data stream of FIG. 8 a fromthe data stream as shown in FIG. 8 b, using the packet numberinformation also stored in the signal blocks, in the way describedabove. The regenerated replica of the MPEG data stream is shown in FIG.8 c. The embodiment of the ‘normal play’ processing unit of FIG. 12,denoted by 60′, comprises a demultiplexer 90 having its input coupled tothe input 59 of the processing unit 60′ for receiving the subsequentgroups of signal blocks, such as the groups G1, G2 and G3 of FIG. 10 or11, and for retrieving therefrom the packets that are supplied to anoutput 91 and for retrieving the array of packet numbers . . . k−4, k−1,k, k+2, k+4, k+8 . . . from the third block sections in the signalblocks, and for supplying the said array of packet numbers to an output92. The packets retrieved are supplied to a sync adder circuit 94 inwhich the one byte long packet sync signal is reinserted as first bytein all the packets. The packets thus obtained are supplied to an input95 of a combining unit 96. The output 92 of the demultiplexer 90 iscoupled to inputs 97 and 98 of the combining unit 96 and a dummy packetgenerator 100 respectively. An output 102 of the dummy packet generator100 is coupled to an input 103 of the combining unit 103. An output 105of the combining unit 96 is coupled to the output 64 of the ‘normalplay’ processing unit 60′.

Let us now assume that the packet P_(k−4) and the packet number k−4 areretrieved from the first group G1 of five signal blocks, and are appliedto the combining unit 96 and the dummy packet generator 100. Thisresults in the packet P_(k−4) being supplied to the output 105 by thecombining unit 96. Next, the packet P_(k−1) and the packet number k−1are retrieved from the group G1 and are applied to the combining unit 96and the dummy packet generator 100. It is established by means of acomparator and/or a subtractor (not shown) that the packet number k−1 isnot the next higher packet number of the packet number k−4, receivedpreviously, and that two packet numbers are missing. As a result, thedummy packet generator 100 generates twice a dummy packet of the samelength as the other packets in the data stream, and the combining unit96 inserts those two dummy packets in the serial data stream, directlyafter the packet P_(k−4), see FIG. 8 c. Next, the combining unit 96inserts the packet P_(k−1) into the serial data stream.

It should be noted here, that there is no specific need for thegenerator 100 to be explicitly a dummy packet generator. It is alsopossible that the generator 100 is a dummy info generator that generatesdummy info of a certain length in time, this length of time being equalto the length of time of a packet or equal to a multiple of the lengthof time of a packet.

The packet P_(k) is the next packet that is retrieved by thedemultiplexer 90, and the packet is supplied, after the addition of thesync byte, to the input 95 of the combining unit 96. The packet number kis supplied to the inputs 97 and 98 of the combining unit 96 and thedummy packet generator 100. As the packet number k is the next higherpacket number to packet number k−1, no dummy packet is generated, andthe packet P_(k) is supplied to the output 105.

Next the packet P_(k+2) is retrieved. After comparison of the packetnumber k+2 with the previous packet number k retrieved, it appears thatone dummy packet must be inserted in the serial data stream. Next, thepacket P_(k+2) is added to the data stream, see FIG. 8 c. This processis continued for the other packets, so as to obtain the regeneratedreplica of the MPEG data stream of FIG. 8 c. When comparing FIG. 8 a and8 c, it will be clear that FIG. 8 c shows an MPEG serial data streamhaving the same bit rate and packet rate as the MPEG data stream of FIG.8 a. This data stream can now be applied to a standard MPEG decoderwhich is capable of decoding the one video program selected by therecording arrangement during recording, from the MPEG data stream ofFIG. 8 c.

FIG. 13 a shows an MPEG serial data stream as a function of time, thedata stream comprising packets P_(k) having a variable length, and thebit rate in the data stream also being variable. It should be noted thatthe transport packets of the MPEG data stream do not comprise a packetnumber. The packet number k, given to the packets in FIG. 13 a, aretherefore only added in this description for identification purposes.FIG. 14 shows schematically an embodiment of the ‘normal play’processing unit 14 for recording one video program that is included inthe serial data stream as shown in FIG. 13 a. The embodiment denoted14″in FIG. 14 shows large resemblances with the embodiment of FIG. 9.The embodiment 14″ differs from the embodiment of FIG. 9, in that,instead of the packet number generator 86, now a timing detector 110 ispresent, having its input coupled to the output of the detector 84, andhaving its output 111 coupled to the input 112 of the combining unit 82.

Selecting only those packets of the packets P_(k) in the serial datastream of FIG. 13 a that include information relating to one videoprogram that will be selected again means, as an example, that thepackets P_(k−4), P_(k−1), P_(k), P_(k+2), P_(k+4), P_(k+8) will beselected and that the intermediate packets will be thrown away. FIG. 13b shows the data stream of the selected packets that will be stored inthe groups of signal blocks, as already has been explained withreference to FIGS. 10 and 11. It should be noted also here that there isno time relationship between the time axes in FIGS. 13 a and 13 b.Further, it should be noted that, although the packets in the datastream of FIG. 13 a have unequal length, they all include 188 bytes ofinformation. Therefore, the packets selected and displayed in FIG. 13 bhave been shown as packets having an equal length.

The embodiment of FIG. 14 receives the data stream of FIG. 13 a andselects therefrom the packets P_(k−4), P_(k−1), P_(k), P_(k+2), P_(k+4),P_(k+8). The packet detector 84 detects the receipt of each packet inthe original serial MPEG data stream applied to the input 11 andgenerates a clock impulse for each packet detected. In response to eachclock impulse received, the timing detector 110 detects the timeinstants t_(k), see FIG. 13 a, of occurrence of the packets P_(k). Thusat the output 111 of the detector 110 appear the time instants . . .t_(k−4), t_(k−3), t_(k−2),t_(k−1), t_(k), . . . etc. Moreover the timedetector 110 detects the lengths of the time intervals dt_(k) betweentwo subsequent time instants, where dt_(k) equals the time intervalt_(k+1)−t_(k). Those time interval values dt_(k) are also applied to theoutput 111. Under the influence of the control signal applied to thecontrol input 83 of the combining unit 82′, the control unit combinesthe packets P_(k−4), P_(k−1), P_(k), P_(k+2), P_(k+4), P_(k+8) selectedby the selector 76 as well as the time instants and corresponding timeintervals t_(k−4), dt_(k−4), t_(k−1), dt_(k−1), t_(k), dt_(k), t_(k+2),dt_(k+2), t_(k+4), dt_(k+4), t_(k+8), dt_(k+8) out of the informationstream supplied by the timing detector 110 for storage into the signalblocks.

The storage of the transport packets in the signal blocks will becarried out in the same way as discussed above with reference to FIGS.10 and 11. The storage of the timing information in the third blocksections can be as follows.

In the third block section TB3.1 of the first signal block SB1 of thegroup G1 of FIG. 10, the timing information t_(k−4) and dt_(k−4) isstored. In the third block section denoted FB of the third signal blockSB3 of the group G1, the timing information t_(k−1) and dt_(k−1) isstored. In the third block section TB3.1 of the first signal block SB1of the group G2, the timing information t_(k) and dt_(k) is stored. Inthe third block section denoted FB of the third signal block SB3 of thegroup G2, the timing information t_(k+2) and dt_(k+2) is stored. In thethird block section TB3.1 of the first signal block SB1 of the group G3,the timing information t_(k+4) and dt_(k+4) is stored. In the thirdblock section denoted FB of the third signal block SB3 of the group G3,the timing information t_(k+8) and dt_(k+8) is stored.

It may be so that the third block section TB3.1 in the first signalblock SB1 in the groups and/or the third block section FB in the thirdsignal block SB3 in the groups is/are too small for storing the timinginformation. In that case, the timing information can be storedsomewhere else, or can be stored partly in the third block section TB3.1and FB and partly somewhere else, see below.

In accordance with the example of FIG. 11, the timing informationt_(k−4) and dt_(k−4) is stored in the third block sections TB3.1, TB3.2and TB3.3 of the signal blocks SB1, SB2 and SB3 respectively of thegroup G1. The storage of the timing information can be carried out oncein the total storage capacity of the third block sections TB3.1, TB3.2and TB3.3 or can be repeated at least once. As an example, the timinginformation t_(k−4) and dt_(k−4) is stored in each of the third blocksections TB3.1, TB3.2 and TB3.3. The timing information t_(k−1) anddt_(k−1) can be stored in the third block sections FB, TB3.4, and TB3.5of the signal blocks SB3, SB4 and SB5 respectively of the group G1. Thestorage of the timing information can be carried out once in the totalstorage capacity of the third block sections FB, TB3.4 and TB3.5 or canbe repeated at least once. As an example, the timing information t_(k−4)and dt_(k−4) is stored in each of the third block sections TB3.4 andTB3.5. It may be possible to store the timing information for the packetP_(k−1) in the third block section TB3.3. It is further possible tostore the timing information in the third block sections TB3.4 andTB3.5, and not in the block section FB.

The timing information for the packet P_(k) can be stored in the thirdblock sections of the group G2 in the same way as the timing informationfor the packet P_(k−4) has been stored in the third block sections ofthe group G1. The timing information for the packet P_(k+2) can bestored in the third block sections of the group G2 in the same way asthe timing information for the packet P_(k−1) has been stored in thethird block sections of the group G1.

The timing information for the packet P_(+4k) can be stored in the thirdblock sections of the group G3 in the same way as the timing informationfor the packet P_(k−4) has been stored in the third block sections ofthe group G1. The timing information for the packet P_(k+8) can bestored in the third block sections of the group G3 in the same way asthe timing information for the packet P_(k−1) has been stored in thethird block sections of the group G1.

FIG. 15 schematically shows an embodiment of the ‘normal play’processing unit 60 of the reproducing arrangement of FIG. 7, denoted60″, for regenerating a replica of the original MPEG data stream of FIG.13 a from the data stream as shown in FIG. 13 b, using the timinginformation also stored in the signal blocks, in the way describedabove. The regenerated replica of the MPEG data stream is shown in FIG.13 c. The embodiment 60″ of FIG. 12 shows a large resemblance with theprocessing unit of FIG. 12. The demultiplexer 90′ is again adapted toretrieve the packets from the subsequent groups of signal blocks, and tosupply the packets to the output 91. The demultiplexer 90′ is furtheradapted to retrieving the timing information t_(k) and dt_(k) from thethird block sections in the signal blocks, and for supplying the saidtiming information to the output 92. A sync byte is added to each packetin the sync adder 94. The packets thus obtained are supplied to theinput 95 of the combining unit 96′. The output 92 of the demultiplexer90 is coupled to inputs 97 and 98 of the combining unit 96′ and a dummyinfo generator 100′ respectively for supplying the timing information tothe combining unit 96′ and the generator 100′.

Let us now assume that the packet P_(k−4) and the corresponding timinginformation are retrieved from the first group G1 of five signal blocks,and are applied to the combining unit 96′ and the dummy packet generator100′. This results in the packet P_(k−4) being supplied to the output105 by the combining unit 96′, in response to the timing information.The length of the packet P_(k−4) will be equal to dt_(k−4), and thepacket will be applied to the output 105 at a time instant correspondingto t_(k−4). Next, the packet P_(k−1) and the timing informationcorresponding to the packet P_(k−1) are retrieved from the group G1 andare applied to the combining unit 96′ and the dummy packet generator100′. It is established, by means of a comparator and/or a subtractor(not shown), that the time instant t_(k−1) is not equal tot_(k−4)+dt_(k−4). Consequently at least one packet following the packetP_(k−4) has been thrown away during recording. As a result, the dummyinfo generator 100′ generates a block of dummy information so as to fillthe gap between the end of the packet P_(k−4), at the time instantt_(k−4)+dt_(k−4), and the time instant t_(k−1), see FIG. 13 c.

Next, the combining unit 96′ inserts the packet P_(k−1) having thelength dt_(k−1) into the serial data stream.

The packet P_(k) is the next packet that is retrieved by thedemultiplexer 90, and the packet is supplied, after the addition of thesync byte, to the input 95 of the combining unit 96′. The timinginformation corresponding to the packet P_(k) is supplied to the inputs97 and 98 of the combining unit 96 and the dummy info generator 100′. Ast_(k) equals t_(k−1)+dt_(k−1), no dummy information need to be isgenerated, and the packet P_(k) is supplied to the output 105.

Next the packet P_(k+2) is retrieved. After comparison of t_(k+2) witht_(k)+dt_(k), it is established that a gap is present that need to befilled with dummy information generated by the generator 100′. Next, thepacket P_(k+2) having a length dt_(k+2) is added to the data stream, seeFIG. 13 c. This process is continued for the other packets, so as toobtain the regenerated replica of the MPEG data stream of FIG. 13 c.When comparing FIG. 13 a and 13 c, it will be clear that FIG. 13 c showsan MPEG serial data stream having the same (variable) bit rate andpacket rate as the MPEG data stream of FIG. 13 a. This data stream cannow be applied to a standard MPEG decoder which is capable of decodingthe one video program selected by the recording arrangement duringrecording, from the MPEG data stream of FIG. 13 c having the variablebit rate and packet rate.

Now, other information will be described that can be inserted in thefree space in the groups of signal blocks alone or together with thepacket number information and/or the timing information described above.

One example of such other information is the information identifying asignal block in a group of y(=5) signal blocks to be the first signalblock in the group of signal blocks. Such information can be stored inthe third block sections TB3.1 of the signal blocks SB1 in the groupsG1, G2 and G3, in FIGS. 10 and 11.

Another example of such other information is the inclusion of a signalblock number in the third block sections of the signal blocks, such asin the situation of FIG. 11. Signal block numbering can be carried outwithin a group, so that in the example of FIG. 11, the numbers 1 to 5are stored in the third block sections TB3.1 to TB3.5 respectively ofthe signal blocks SB1 to SB5 in each group. Signal block numbering canalso be realized for a larger number of signal blocks, belonging to morethan one group of signal blocks. One could imagine that all the signalblocks in one track have a unique signal block number stored in thethird block sections of the signal blocks. Now, all the signal blocks ina track can be identified by their unique signal block number.

Signal block numbering the signal blocks as described above has a numberof advantages. Numbering the signal blocks open the possibility toshuffle signal blocks in an order different from their original order,as long as the shuffling is done within a group of signal blocksidentified by unique signal block numbers. By detecting the signal blocknumbers upon reproduction, a deshuffling can be carried out on theshuffled signal blocks so as to obtain the original sequence order ofthe signal blocks.

Another measure that can be carried out is repeating a signal block, forthe reason that the recording and subsequent reproduction of theinformation included in the signal block require a higher protectionagainst transmission errors. Repeated signal blocks will have the samesignal block numbers so that they are identifiable upon reproduction.

Further, upon detection of the signal block numbers, it can be detectedwhether a signal block has been lost because of transmission errorsoccurring during the subsequent recording and reproduction step. Whenmissing a signal block number in a sequence of signal block numbers, itcan be decided that the signal block having the signal block number thathas been missed is lost. Upon such detection, an error correction orconcealment can be carried out so as to correct or conceal the missingsignal block.

Next, an explanation will be given of the functioning of the ‘trickplay’ processing units 16 and 62 in the recording arrangement of FIG. 6and the reproducing arrangement of FIG. 7 respectively. For carrying outa trick mode (or feature mode) reproduction with the reproductionarrangement, the record carrier 40 is transported with a speed otherthan the nominal transport speed. FIG. 16 shows the record carrier 40having a number of slant tracks recorded on it. FIG. 16 also shows apath, denoted by the reference numeral 120, via which path the readinghead 52 scans the record carrier in said trick mode. Generally, theinformation in the tracks is recorded by at least two heads having gapsof different azimuth angles, so that even numbered tracks have the oneazimuth and odd numbered tracks have the other azimuth. That means that,when scanning the record carrier along the path 120, the head 52, whichhead has one of the two azimuth angles, will be able to read informationfrom only the even numbered or only the odd numbered tracks.

In order to enable a reproduction of video information during a trickplay mode, especially in the case of video information being recorded ina data reduced form, it is required to add special trick playinformation in special locations in the tracks such that those locationsare scanned by the head 52 for the various transport speeds for therecord carrier that are possible in a trick play mode. This trick playinformation is special video information recorded in addition to thenormal play video information that has been recorded in the tracks inthe way described above. As a consequence some of the signal blocks in atrack comprise this trick play information, which should be scanned andread by the head 52 in the trick play mode.

It should be noted here that the MPEG data, as far as the video data inthe MPEG data stream is concerned, comprises data reduced videoinformation. To realize such data reduced video information theinformation corresponding to one picture is intra encoded so as toobtain so called I-frames. A higher data reduction can be obtained bycarrying out an interframe encoding on at least two subsequent pictures,resulting in an I-frame for the first picture and a P-frame for thesecond picture. For recreating the two pictures an intraframe decoding,inverse to the intraframe encoding, must be carried out on the I-frameinformation, so as to regenerate the first picture, and an interframedecoding, inverse to the interframe encoding, must be carried out usingboth the I-frame information and the P-frame information, so as toregenerate the second picture.

In a trick mode, only I-frame information can be used to regenerate avideo signal, as retrieving not only the I-frame information but alsothe corresponding P-frame information so as to realize an interframedecoding, is not possible. Therefore, in order to obtain the ‘trickplay’ information, only the information stored in I-frames included inthe serial MPEG data-stream is extracted and used as ‘trick play’ data.

It can be said that in a special location in a track, such as in thelocation indicated by the hatched area 122 in the track 124 in FIG. 16,a number of signal blocks are inserted that comprise the ‘trick play’information. FIG. 17 shows the sequence of signal blocks in the track124. The hatched area 122 in FIG. 16 is formed by the sequence of signalblocks SB_(i) to SB_(j) inclusive in the sequence given in FIG. 17. Thethird block sections TB in the signal blocks comprised in the trick playarea 122 of the track now comprise an indication that the signal blockscomprise trick mode information. This indication information is denotedby ‘T’ in the third block sections TB3 of the signal blocks SB_(i) toSB_(j) inclusive. The signal blocks stored in the track prior to thetrick play area 122, as well as the signal blocks stored in the trackafter the trick play area 122 comprise information indicating that theinformation stored in the signal blocks is normal play information. Thisindication information is denoted by ‘N’ in the third block sections TB3in the signal blocks SB_(i−2), SB_(i−1), SB_(j+1).

The ‘trick play’ processing unit 16 of FIG. 6 is thus capable ofderiving the trick play information from the MPEG data stream applied toits input 17, storing the trick play information in those signal blocksthat are specifically meant for storing the trick play information in aspecific location in a track and for inserting the indicationinformation indicating that the signal block is a signal block in whichtrick mode information is stored in the third block sections of thosesignal blocks. The ‘normal play’ processing unit 14 will further becapable of storing the indication information indicating that the signalblocks generated by the unit 14 comprise normal play information, in thethird block sections of those signal blocks.

When the reproducing arrangement is switched into its trick mode, the‘trick play’ processing unit 62 will be capable of detecting thosesignal blocks that have the ‘T’ identification stored in their thirdblock sections and to retrieve the information from those signal blocksfor further processing so as to realize a reviewing option during thetrick mode.

The embodiments described above describe a scheme for receiving an MPEGtransport stream, recording it asynchronously on a DVCR, and recreatingthe original MPEG transport stream during playback. This can be broadlyviewed as a method of transmitting timing critical data (the MPEG datastream) via an asynchronous channel (the DVCR).

In addition to transmitting MPEG data streams, there are various otherapplications that may require the transmission of timing critical dataover an asynchronous channel. Asynchronous here means that the physicaldata rate of the channel is different from the transport rate, the rateof the data to be transmitted, so that the bitwise timing of data is notmaintained through the channel transmission.

In the MPEG transport stream as an example of timing critical data, therelative arrival time of a datum which represents timing information ofthe transport stream, i.e., the Program Clock Reference (PCR), must notbe changed beyond a specified tolerance through transmission withoutchanging the PCR value accordingly. This is because otherwise, the PhaseLock Loop (PLL) circuitry of a decoder will fail to regenerate the dataclock, and the buffers may under/overflow.

This problem of how to transmit timing critical data over anasynchronous channel without changing any datum to be transmitted alsoexists where the asynchronous channel is a computer network, a telephonenetwork or a digital interface, e.g. P1394.

As explained above in connection with the MPEG application, the basicscheme is to tag each transmission unit, e.g., an MPEG transport packet,with timing information before transmission and use the taggedinformation to recreate the proper data timing at the other end of thechannel. Three possible situations may arise.

1. If Both the Size of the Transmission Unit and the Transport Rate areKnown and Constant

The transmitter side of the channel tags each transmission unit with asequence number, which is increased by one at each transmission unit.The tagging is done, as one example, by inserting a fixed number of bitsin front of each transmission unit. A number of bits for the tagging ischosen so that the number of sequence represented is large enough tocope with the maximum consecutive missing transmission units due to, forexample, channel errors. The receiver side of the channel has a bufferand a counter. The counter is loaded with the sequence number of thefirst received transmission unit at the beginning of each transmissionsession and is increased by one each time when the receiver sends out atransmission unit or a dummy unit. If the sequence number of a receivedtransmission unit matches the counter value, the received transmissionunit is sent out, otherwise, a necessary number of dummy units are sentout until the counter value matches the sequence number. The receiverstrips off the tagged information and sends out a transmission unit or adummy unit at the known and constant rate.

2. If the Size of the Transmission Unit is Known and Constant but theTransport Rate is Unknown

The transmitter side of the channel tags each transmission unit with,for example, two pieces of information which is sufficient to determinethe start time and the end time of the transmission unit. For instance,a pair of the start time and the end time itself or a pair of the starttime and the time duration of the transmission unit can be used. Thereceiver side of the channel now has to regenerate the transport ratefrom the tagged information in addition to checking the start time ofeach transmission unit. There is no need to insert dummy units in thiscase.

3. If Only the Timing of Specific Data is Important

If there is no need to maintain the idiosyncracy of the entire transportstream, i.e., only the timing of specific data has to be maintained,there is no need to regenerate the transport rate from the taggedinformation, provided the transport rate generated by the receiver ishigh enough so that no time overlap of transmission units will occur.The transmitter side of the channel tags each transmission unit with thelocation of the timing critical datum and its expected arrival time. Ifthe location is known and constant, the location information can beomitted. If there are more than one timing critical data in each unit, anumber of extra information pairs can be added accordingly. The receiverside of the channel determines the start time of each transmission unitfrom the output transport rate, the location and the expected arrivaltime of the timing critical datum. There is no need to insert dummyunits in this case.

FIG. 18 is a block diagram of another form of the basic system, againapplied to the MPEG application where R represents the transport rate ofthe MPEG data stream subdivided into transmission units in the form of asuccession of transport packets from a digital interface (D-I/F).

Selection block 130 corresponds to the selector 76 of FIG. 9. Thisembodiment corresponds to situation 2, and thus comprises a referenceclock 132 and counter 133 to determine the timing information of theinputted data stream and tag each transport packet via block 135 with a“time of arrival” (TOA) stamp and “duration of arrival” (DOA) stamp,both with respect to the local counter. These tagging bits are recordedvia buffer 137 onto tape along with the corresponding transport packets(TPs) using the extra bits available from the 2 to 5 sync blocks mappingas described earlier.

On playback, each recorded packet is read out at its correct time andrate according to the “time of arrival” and “duration of arrival” stampinformation under control of a read control block 138. The TOA stampindicates the time when the VCR should start reading that particular TPfrom the buffer 131 and output it to the D-I/F. The DOA stamp indicatesthe rate at which that TP should be read out, i.e., 188 bytes of that TPmust be read during the DOA of that packet; hence the rate can be easilycomputed. The MUX block 139 is used in the normal way to interleave thetagged packets with trickmode and null packets as desired, and theDE-MUX block 140 acts to strip added packets on playback. This schemereproduces all the desired packets at precisely the right time and atthe correct rates. However, the output stream does not fill in themissing packets, hence has gaps. The main reason for this is that theinput stream can have gaps which are not an integer number of transportpacket length. For example, the Grand Alliance stream is expected tohave gaps which are as small as 20 bytes long. These can obviously notbe filled by the VCR. Moreover, in this scheme the nonrecorded PIDpackets also appear as gaps in the output transport stream.

FIG. 19 gives an example of the transport stream resulting. In the upperdiagram, as an example, the input transport stream is a two programstream: program A and B. We record only program A. On playback, all thepackets belonging to program A are reproduced at precisely theiroriginal times and rates, however there is no filling in for thenonrecorded program B. Hence the output stream, shown in the lowerdiagram, is more bursty than the input stream. If the input stream was avalid MPEG signal, the output stream will also be valid.

The timing information in the input data stream R can be determined in anumber of different ways not important to the invention. One simple way,as an example, is to connect the input data stream to a known packetdetector circuit 134 which can detect the start and end times of eachincoming TP. The outputs of the packet detector circuit can then be usedto detect counter values of the counter 133 which represent the desiredtiming information. The reference clock 132 must be the same frequencyfor the recording and playback process for consistent interpretation ofthe tagged information, and appropriate steps taken to initialize thecounter 133 in a predetermined manner that is consistent duringrecording and playback. The recorded timer information is stripped fromthe transport stream in the read control block 138 and is used todetermine when the stored TPs can be output.

For situation 1, where the transport rate of the incoming transportstream is constant and known, a variation on the previous method can beused to recreate this stream on playback. The main features of thisembodiment require only a local counter (in place of the reference clockand counter of FIG. 18), incrementing at the arrival of each transportpacket, and tagging each transport packet with a “sequence of arrival”(SOA) stamp, using the extra bits available from the 2 to 5 mapping. Onplayback, each time a “discontinuity” in the SOA tag is detected, it isassumed to have come from a TP that has not been recorded. These“missing” packets are replaced with Null packets. All TPs are output atthe known and constant transport rate. The FIG. 20 time diagramsillustrate the input and output streams showing maintenance of thecritical timing information.

In the block diagram of FIG. 18, only the data flow is shown by thearrows. Those skilled in the art will understand that several of theblocks are interconnected for command and control signals that are notshown in the figure.

As previously indicated, the invention is also applicable to other dataformats and other ways of preserving the critical timing data. FIG. 21shows a block data transmission unit of some channel in which each datablock 150 comprises a preamble 151 in the form of a block header, ablock payload 152 for carrying the data stream, and a postamble 153 inthe form of a block CRC. FIG. 22 shows one example of the formatting ofthe block payload 152 in an MPEG application. In this example, the blockpayload 152 carries 5 188 byte MPEG transport packets 160 . . . 164.There are 6 pointers 166 . . . 171 to byte positions of the transportpackets. Data 173 . . . 178 associated with each byte pointer 166.171 istiming information. All pointers and associated data representing timinginformation require an extra 24 bytes, as one example, to be stored inaddition to the 5 transport packets. These are stored in a payload tagor header 180. Assuming for the example 10 bits for each byte locationpointer×6 pointers (166 . . . 171)=60 bits; 21 bits for each timing datapointer×6 pointers (173 . . . 178)=126 bits; totalling 186 bits orapproximately 24 bytes.

As will be noted, the byte position pointers need not all point to thebeginning and the end of a particular packet. In this example, which ispreferred, only byte location pointers 167 and 168 point to thebeginning and end locations of the second transport packet 161. Theother byte location pointers point to a location offset from thebeginning. That offset location preferably is the location of the PCR,typically located at the 12th byte after the beginning of the transportpacket and which is conventionally used for timer recovery as a syncpulse to lock the clock in the apparatus to the clock of the encodingsource of the data stream. By this choice of byte location pointers,only 6 pointers 166 . . . 171 are needed to unambiguously identify thetiming information of the sequence of 5 packets 160 . . . 164, with 1packet having 2 pointers and with the remaining 4 packets having only 1pointer. The associated data 173 . . . 178 in this case is the timeinstants pointed to by the 6 pointers. The associated data can alsoinclude the packet number. Where the bit rate is known and constant, thedata could be the packet number alone. The resultant total payload isthe 5 packets 160 . . . 164 plus the payload header or tag 180 whichcontains the timing information for the succeeding 5 TPs.

It will be understood that what is contained in the header 180 are twofields associated with information unit. For example, it would containthe byte location pointed to by pointer 166 and a second fieldcontaining, for example, the timing information for that byte location.

To implement the scheme illustrated in FIGS. 21 and 22, the sameapparatus depicted in FIG. 18 can be used with a block formatter stagepositioned before the buffer stage 137 to provide the block formattingincluding providing the block header, computing and adding the payloadtag, and adding the transport packets and CRC block before recording.

The various tagging options usable with the invention are summarized inFIG. 23. Tag option 1 includes the packet start and end times; tagoption 2 includes the packet start time and packet duration; tag option3 includes a timing critical datum such as the PCR whose location isknown, thus only 1 pointer or item of information compared with theother options which require at least two information items.

It will be understood that the expression “timing information” has beenused herein in its broadest sense to include not only the informationdepicted in FIG. 23, but also packet sequence numbers, and in generalall information needed for timing transparency, meaning that from theview of an external observor, the channel does not affect or alter thetiming.

The invention has been described in a situation where real-time data(the broadcast or transmitted-by-cable MPEG information signal) isrecorded on non-real-time media (the DVCR). Another important example iswhat is known as a P1394 D-I/F and in which an asynchronous transfer isinvolved in which it is essential to recover the timing of the originaldata stream.

In P1394 interface protocal, data blocks similar to that shown in FIG.21 are used for data transmission, for example, between computers orconsumer electronic apparatus. If the data was MPEG transport packets,the description given above with respect to FIGS. 21 and 22 could beused. In this case, the channel is not storing the MPEG data stream butdue to the asynchronous nature of the P1394 interface, the correcttiming of the MPEG packets is lost without using the invention describedherein.

1. A method of transmitting timing-critical data, comprising: providingthe timing-critical data subdivided into a stream of successivecritically-timed transport units; determining, from the stream oftiming-critical data, stream recreation information which includes atleast one item of timing information for the transport units, from whichstream recreation information, the stream of timing-critical data isrecreated; tagging at least some of the transport units with said atleast one item of timing information; and transmitting said transportunits with the tagged items of timing information, and without acritical timing of the timing-critical data, wherein the timinginformation for a plurality of transport units comprises two pointers tobyte locations of some of the plurality of transport units and onepointer to a byte location of the remainder of the plurality oftransport units together with the associated timing information.
 2. Themethod of claim 1, wherein the two pointers point to the start and endtimes respectively of the one transmission unit.
 3. The method of claim2, wherein the one pointer is to a byte location in the transmissionunit.
 4. The method of claim 3, wherein data associated with the onepointer is to a time instant of one of the transport units.
 5. Themethod of claim 4, wherein the plurality of transport units is MovingPictures Experts Group (MPEG) transport packets of an MPEG informationsignal.
 6. The method of claim 5, wherein the one pointer points to theProgram Clock Reference (PCR).
 7. The method of claim 5, wherein thenumber plurality of transport units is 5 transport units.